home *** CD-ROM | disk | FTP | other *** search
/ PC World Interactive 4 / PC World Interactive 4.iso / share / internet / counter.EXE / README.TXT < prev   
Text File  |  1995-12-21  |  15KB  |  385 lines

  1.      Counter 2.6.0
  2.  
  3.      by Kevin Athey
  4.  
  5. Behold! Software (c)1995
  6.  
  7.  
  8. The Most Recent Version
  9. -----------------------
  10. Always get the most recent version from:
  11. URL:    http://www.he.net/~bbsbs/behold/counter.html
  12. FTP:    ftp://ftp.adnc.com/ftp/dropboxes/bbsbs/behold
  13.         Server:    ftp.adnc.com
  14.         Directory: /ftp/dropboxes/bbsbs/behold
  15.         File:      cntr???.zip
  16.  
  17.  
  18. What Is It?
  19. -----------
  20. This application can be used in HTML to count and display the number
  21. of times a page has been accessed.  This is a Windows NT (32-bit) Console
  22. Application.
  23.  
  24.  
  25. Installation
  26. ------------
  27. The easiest way is to unzip this archive in your cgi-bin using the "-d"
  28. command.  This will put everything where it belongs.
  29.  
  30. 1. Place the executable (counter.exe) and the Counter-Counter-Terrorism GIF
  31.     (cct.gif) in your cgi-bin directory.
  32. 2. Copy all the counter GIFs (0default.gif, 1default.gif, ...) into a
  33.     subdirectory of your cgi-bin named "cntrgifs".  Place any additional
  34.     GIF digits here as well.
  35.  
  36.  
  37. Instructions
  38. ------------
  39. Always start with a very simple counter and then build it up to what you
  40. want.  Your first HTML piece should look something like this:
  41.  
  42. <img src=/cgi-bin/counter.exe?home.html>
  43.  
  44. If this doesn't work, you will have to look carefully at how you have things
  45. setup.
  46.  
  47.  
  48. Usage
  49. -----
  50. Usage: counter [-f<fg clr>] [-b<bg clr> | -t<t idx>] [-s<style>]
  51.                [-n] [-d<GIF dir>] [-w<#>] [-r] < -c<#> | <item> >
  52.         -f<fg clr>   - color to render foreground in.
  53.         -b<bg clr>   - color to render background in.
  54.         -t<t idx>    - index to color which should be transparent.
  55.         -s<style>    - name of number style  (#style.gif).
  56.         -n           - no increment, just build GIF.
  57.         -d<GIF dir>  - directory where digits are located.
  58.                        relative to the location of this program.
  59.         -w<#>        - width of counter in # of digits.
  60.         -r           - raw, no HTTP prefix. not useful in HTML,
  61.                        only on the command line.
  62.         -h           - hidden, builds a transparent one by one GIF.
  63.  
  64.    -c<#> and <item> are exclusive.
  65.         -c<#>        - specify the number which you want to build.
  66.                        ignores <item> and log.
  67.         <item>       - unique identifier for counting.
  68.                        usually name of page.
  69.  
  70.  
  71. You can get this same information by running the program at the command
  72. line without any arguments.
  73.  
  74.  
  75. Some More Advanced And Complicated Examples
  76. -------------------------------------------
  77.  
  78. HTML Example: <img src=counter.exe?-f0000FF+-bFF0000+home.html>
  79.  
  80. This will put the graphic in your page.  The last argument I use in a log
  81. which is created in the directory where the program resides.  This allows you
  82. to have the count be updated.  You can also have many counts using only one
  83. program, by just passing different names.  This will create BLUE numbers on
  84. a RED background using the default digits.
  85.  
  86.  
  87. Another HTML Example: <img src=counter.exe?-t0+-f00FF00+home.html>
  88.  
  89. This will create GREEN numbers on a TRANSPARENT background using the
  90. default digits.
  91.  
  92.  
  93. Yet Another HTML Example: <img src=counter.exe?-scb+home.html>
  94.  
  95. This creates numbers using the "cb" style.  It will look for the GIF files
  96. in the "cntrgifs" directory, with the following names: 0cb.gif, 1cb.gif,
  97. 2cb.gif, ...
  98.  
  99.  
  100. Ultimate Example: See my web page.
  101.     http://cervantes.comptons.com/home.htm
  102. Then view the source.
  103.  
  104. Then look at these two pages.
  105.     http://cervantes.comptons.com/buftom/buftom.htm
  106.     http://cervantes.comptons.com/amini/amini.htm
  107. View their sources as well.  You will see that I am using the same program
  108. to count many different pages.
  109.  
  110.  
  111. Separating Parameters
  112. ---------------------
  113. On some servers, it is necessary to use a "&" instead of "+" to separate
  114. parameters to the counter.
  115.  
  116.  
  117. Specifying Colors
  118. -----------------
  119. When you are specifying colors you must use the following format.
  120. RRGGBB, where each pair represents a hexadecimal number.  You must include
  121. all necessary zeros.
  122.  
  123. Example: FF0000 - Bright Red
  124. Example: 00FF00 - Bright Green
  125. Example: 0000FF - Bright Blue
  126.  
  127.  
  128. Specifying Digit Directory
  129. --------------------------
  130. The default is "cntrgifs" and is relative to the location of the program.
  131. When specifying a different directory, remember to make it relative to
  132. where the program resides.
  133.  
  134. Example: <img src=counter.exe?-dmydigits+-smine+home.html>
  135.  
  136. Counter will produce its GIF using the following GIF files:
  137. mydigits/0mine.gif, mydigits/1mine.gif, mydigits/2mine.gif, ...
  138.  
  139.  
  140. Counter-Counter-Terrorism
  141. -------------------------
  142. Create a file named "counter.cct" which resides in the same directory
  143. as the executable.  In this text file enter the various names of the machines
  144. on which you will have pages which use the counter.  Any page which refers to
  145. this counter which doesn't have it's address in the "counter.cct" file will
  146. be refused a counter and will get the "cct.gif" file in response.
  147. Just try it.  It really works.
  148.  
  149. Many people have asked what a "counter.cct" file looks like.  Here is
  150. an example:
  151.  
  152. ---begin counter.cct---
  153. cervantes.comptons.com
  154. melville.comptons.com
  155. --- end  counter.cct---
  156.  
  157. There is no longer any limit to the number of machines you can specify.
  158.  
  159.  
  160. Don't Count Me
  161. --------------
  162. Create a file named "counter.nct" which resides in the same directory as the
  163. executable.  In this text file enter the various IP addresses of machines which
  164. you don't want the counter to count.  The counter will still display the
  165. current count but it won't increment the count if the IP which is accessing
  166. the page is present in this file.
  167.  
  168. ---begin counter.nct---
  169. 192.215.244.60
  170. 192.215.244.58
  171. 192.215.244.*
  172. --- end  counter.nct---
  173.  
  174. You may use wild cards.  This will allow you to prevent an entire domain from
  175. being counted.  In my example above, the final entry makes the two previous
  176. entries redundant.
  177.  
  178.  
  179. Adding Your Own Digits
  180. ----------------------
  181. You can create your own digits.  They must be GIFs and they must all be
  182. the same height in one group.  The naming convention is the digit
  183. followed by the style name.
  184.  
  185. Furthermore, if you do create your own digits, please write me and tell me
  186. about them or even send them to me.  I will want to add them to my digit
  187. page (http://cervantes.comptons.com/digits).
  188.  
  189.  
  190. Raw Output
  191. ----------
  192. This parameter (-r) allows you to use the counter from the command line to
  193. generate a GIF using the digits for a number.  I just added this feature to
  194. make it easier than assembling the digits in some paint program.
  195.  
  196.  
  197. How do I know I can get it to work?
  198. -----------------------------------
  199. This counter has been proven to work on the following HTTP servers:
  200.     -SAIC-HTTP
  201.     -EMWAC HTTPS
  202.     -Purveyor
  203.     -Website
  204.     -Netscape
  205.     -Alibaba
  206.  
  207.  
  208. Special Notes About Certain Servers
  209. -----------------------------------
  210. Website:  1. Be sure to put the counter and its support files in "cgi-shl",
  211.              not "cgi-bin" or "cgi-win".
  212.  
  213. Netscape: 1. Be sure to enable CGI.
  214.  
  215.  
  216. QUESTIONS
  217. ---------
  218. If you have any questions, write me: kathey@birdbrain.com
  219.  
  220. When writing, please answer these questions first, then tell me about your
  221. problem.  If you don't answer these questions in your first piece of mail,
  222. I will probably just copy these lines to the clipboard and into my reply,
  223. and ask you to answer them again.
  224.  
  225. 1. Where is your site?
  226. 2. Where is an example of your counter?
  227. 3. What is the exact HTML you are using to call the counter?
  228. 4. What server software are you using?
  229. 5. What are the contents of the "counter.err" file?
  230. 6. By examining the "counter.log" file, can you tell if it is incrementing?
  231.  
  232.  
  233. Cost
  234. ----
  235. This product is donation ware.
  236.  
  237. If you want to send me $5.00 or more, I will cash your check.
  238. This is totally voluntary.  I am simply asking for the money to
  239. keep my private site up and keep good software coming your way.
  240.  
  241. Make it payable to Kevin Athey.
  242. Mail it to:
  243.     Behold! Software
  244.     P.O.Box 83174
  245.     San Diego, CA  92138
  246.  
  247.  
  248. History
  249. -------
  250.    DATE       VERSION   COMMENT
  251. -----------   -------   -------
  252. 08 Nov 1995   2.6.0     -CCT file separated into two separate files.  One,
  253.                          "counter.cct" serves the Counter Counter Terrorism and
  254.                          two, "counter.nct" which is used to name machines
  255.                          which shouldn't be counted.
  256.                         -If wait time is exceeded on mutex then gracefully
  257.                          exit without producing graphic, but generate error
  258.                          to log.
  259.  
  260. 02 Nov 1995   2.5.1     -Now uses Mutex instead of semaphore.  This is the
  261.                          correct solution to multiple instances problem.
  262.  
  263. 01 Nov 1995   2.5.0     -Added "-h" option which creates a one by one
  264.                          transparent GIF, essentially hidden.
  265.  
  266. 01 Nov 1995   2.4.1     -Fixed bug in command line parsing.
  267.  
  268. 13 Oct 1995   2.4.0     -Added error messages for inability to delete old log
  269.                          and rename new log to correct name.
  270.                         -Added "-w" option to allow setting the width of the
  271.                          output.
  272.                         -Added "-c" option which gives you the ability to
  273.                          build any number you like, it ignores the log.
  274.                         -Added "-r" option which doesn't output HTTP header.
  275.                          This allows you to redirect output to a file and
  276.                          generate a GIF.  This is not useful within HTML.
  277.  
  278. 03 Oct 1995   2.3.1     -Added a few more error messages to indicate an
  279.                          inability to allocate memory.
  280.  
  281. 28 Sep 1995   2.3.0     -Added "-d" option which allows you to set the
  282.                          location of the digit GIFs.
  283.                         -Replaced dumb file semaphore with real Windows
  284.                          semaphore, which allows for queueing.
  285.                         -Wait for semaphore clear increased from one minute
  286.                          to two minutes.
  287.  
  288. 19 Sep 1995   2.2.0     -Added "-n" option which allows you to show a count
  289.                          without incrementing it.
  290.                         -Digits in a set no longer have to be the same width.
  291.                          Allows me to use all the digits on the digit page.
  292.  
  293. 06 Sep 1995   2.1.0     -Implemented Counter-Counter-Terrorism.
  294.                         -The above feature also prevents you from counting
  295.                          hits from your own machine.
  296.  
  297. 22 Aug 1995   2.0.0     -Complete re-write.
  298.                         -Now uses GD library for GIF manipulation.
  299.                         -Support for transparency.
  300.                         -Uses many different digit GIFs.
  301.                         -If digit is Black background and White foreground,
  302.                          Then you can set the colors of the digits.
  303.                         -Disabled buffering for stdout, decreasing chances of
  304.                          connection reset failure.
  305.  
  306. 10 Aug 1995   1.2.0     -Now has a semaphore to allow multiple instances
  307.                          gracefully. Implemented via a file.
  308.                         -Switches stdout to binary mode for the GIF.  Results
  309.                          in more reliable output.
  310.                         -Generates an error log, when there is a failure.
  311.                          Error Log is "counter.err".  There are only 3 possible
  312.                          errors that are detected and logged currently.
  313.  
  314. 03 Aug 1995   1.1.1     -Slight bug fixes
  315.                         -Attempted 16-bit version. (A complete failure.)
  316.  
  317. 01 Aug 1995   1.0.0     -Initial release.
  318.  
  319.  
  320.  
  321. CREDITS
  322. -------
  323. This product uses "gd 1.2" for the GIF manipulation.
  324. You can acquire this library at the following location:
  325. http://siva.cshl.org/gd/gd.html
  326.  
  327. Here are all the copyrights required by it:
  328.  
  329. gd 1.2 is copyright 1994, 1995, Quest Protein Database Center, Cold Spring
  330. Harbor Labs. Permission granted to copy and distribute this work provided that
  331. this notice remains intact. Credit for the library must be given to the Quest
  332. Protein Database Center, Cold Spring Harbor Labs, in all derived works. This
  333. does not affect your ownership of the derived work itself, and the intent is
  334. to assure proper credit for Quest, not to interfere with your use of gd. If
  335. you have questions, ask. ("Derived works" includes all programs that utilize
  336. the library. Credit must be given in user-visible documentation.) 
  337.  
  338. The Quest Protein Database Center is funded under Grant P41-RR02188 by the
  339. National Institutes of Health. 
  340.  
  341. Written by Thomas Boutell (boutell@boutell.com), 2/94 - 7/95. 
  342.  
  343. The GIF compression code is based on that found in the pbmplus utilities,
  344. which in turn is based on GIFENCOD by David Rowley. See the notice below: 
  345.  
  346. /*
  347. ** Based on GIFENCOD by David Rowley .A
  348. ** Lempel-Zim compression based on "compress".
  349. **
  350. ** Modified by Marcel Wijkstra 
  351. **
  352. ** Copyright (C) 1989 by Jef Poskanzer.
  353. **
  354. ** Permission to use, copy, modify, and distribute this software and its
  355. ** documentation for any purpose and without fee is hereby granted, provided
  356. ** that the above copyright notice appear in all copies and that both that
  357. ** copyright notice and this permission notice appear in supporting
  358. ** documentation.  This software is provided "as is" without express or
  359. ** implied warranty.
  360. **
  361. ** The Graphics Interchange Format(c) is the Copyright property of
  362. ** CompuServe Incorporated.  GIF(sm) is a Service Mark property of
  363. ** CompuServe Incorporated.
  364. */
  365.  
  366. The GIF decompression is based on that found in the pbmplus utilities, which
  367. in turn is based on GIFDECOD by David Koblas. See the notice below: 
  368.  
  369. /* +-------------------------------------------------------------------+ */
  370. /* | Copyright 1990, 1991, 1993, David Koblas.  (koblas@netcom.com)    | */
  371. /* |   Permission to use, copy, modify, and distribute this software   | */
  372. /* |   and its documentation for any purpose and without fee is hereby | */
  373. /* |   granted, provided that the above copyright notice appear in all | */
  374. /* |   copies and that both that copyright notice and this permission  | */
  375. /* |   notice appear in supporting documentation.  This software is    | */
  376. /* |   provided "as is" without express or implied warranty.           | */
  377. /* +-------------------------------------------------------------------+ */
  378.  
  379.  
  380.  
  381. *            -kevin-            *| ep |*    BirdBrain Systems     *
  382. * sick with the good infection  *| ip |*    Makers of DisKing     *
  383. *     kathey@birdbrain.com      *| ha |*                          *
  384. * http://cervantes.comptons.com *| ny |* http://www.he.net/~bbsbs *
  385.